/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package gradehorario;

import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;

/**
 *
 * @author rafaelneri
 * 
 * Representa um Leilao
 */
public class Leilao {
    private int _id;
    private HashMap<Item, ItemLeilao> _itens;
    private List<Item> _itensCadastro;
    private boolean _leilaoEmAndamento;
    private List<Comprador> _compradores;
            
    public Leilao(int id){
        this._id = id;
        this._itens = new HashMap<Item, ItemLeilao>();
        this._itensCadastro = new ArrayList<Item>();
        this._compradores = new ArrayList<Comprador>();
    }
    
    public boolean addLance(Item item, Lance lance){
        boolean result = false;
        if(this._itens.containsKey(item)){
            ItemLeilao itemLeilao = this._itens.get(item);
            if(itemLeilao.getValorLance() < lance.getValor()){
                itemLeilao.setLance(lance);
                result = true;
            }
        }
        
        return result;
    }
    
    public List<Item> getItensCadastro()
    {
        return _itensCadastro;
    }
    
    public void addItemCadastro(Item item)
    {
        _itensCadastro.add(item);
    }
    
    public List<Comprador> getCompradores()
    {
        return this._compradores;
    }
    
    public void addComprador(Comprador comprador)
    {
        this._compradores.add(comprador);
    }
    
    public boolean isLeilaoEmAndamento()
    {
        return _leilaoEmAndamento;
    }
    
    public void setLeilaoEmAndamento(boolean leilaoEmAndamento)
    {
        this._leilaoEmAndamento = leilaoEmAndamento;
    }
    
    public void iniciar(Item item)
    {
        this._leilaoEmAndamento = true;
    }
}
